Strategic programming on graph rewriting systems

نویسندگان

  • Maribel Fernández
  • Olivier Namet
چکیده

Rewriting [4] is a computation model used in computer science, algebra, logic and linguistics, amongst others. Its purpose is to transform syntactic objects (words, terms, programs, proofs, graphs, etc., which we will call generally expressions), by applying rewrite rules until a suitable simplied form is obtained. Given an expression and a set of rewrite rules, it is often the case that several different rules can be applied, and the same rule can be applied to different sub-expressions. To control the rewriting process, a strategy of application of rules is used. In this paper we focus on graph rewriting [11, 27]. Graphs are widely used for describing complex structures in a visual and intuitive way, e.g., UML diagrams, representation of proofs, microprocessor design, XML documents, communication networks, data and control flow, neural networks, biological systems, etc. Graph rewriting has many applications in specification, programming, and simulation tools, amongst others [12, 13]. Several graph-transformation languages and tools have been developed, such as PROGRES [28], AGG [14], Fujaba [23], GROOVE [26], GrGen [17] and GP [25], only to mention a few. When the graphs are large or growing along transformations, or when the number of graph rewriting rules is large, visualisation becomes crucial to understand the graph evolution. PORGY [1] is a visual environment that allows users to define graphs and graph rewriting rules, and to experiment with a graph rewriting system in a visual and interactive way. For instance, one may want to apply a rule r on a graph G at the positions described by the subgraph P to study different rewriting derivations for G. To control the application of graph rewriting rules, PORGY uses a strategy language. In this paper we describe this strategy language and show how it can be used to write high-level declarative programs in several application areas. Strategies for rewriting have been well studied in the case of terms: there are languages that allow the user to specify and apply strategies controlling the use of term rewrite rules (see for instance [9, 29, 6]). For graph rewriting, some of the languages and tools mentioned above also allow users to guide the rewriting engine, for instance by specifying the order in which rules will

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Strategic Port Graph Rewriting for Autonomic Computing

In this paper, we present a high-level formalism based on port graph rewriting, strategic rewriting, and rewriting calculus. We show that this formalism is suitable for modeling autonomic systems and we illustrate its expressivity for modeling properties of such systems using an example of a mail delivery system.

متن کامل

Attributed Hierarchical Port Graphs and Applications

We present attributed hierarchical port graphs (AHP) as an extension of port graphs that aims at facilitating the design of modular port graph models for complex systems. AHP consist of a number of interconnected layers, where each layer defines a port graph whose nodes may link to layers further down the hierarchy; attributes are used to store user-defined data as well as visualisation and run...

متن کامل

Graph Creation, Visualisation and Transformation

We describe a tool to create, edit, visualise and compute with interaction nets — a form of graph rewriting systems. The editor, called GraphPaper, allows users to create and edit graphs and their transformation rules using an intuitive user interface. The editor uses the functionalities of the TULIP system, which gives us access to a wealth of visualisation algorithms. Interaction nets are not...

متن کامل

Strategic Port Graph Rewriting: An Interactive Modelling and Analysis Framework

We present strategic port graph rewriting as a basis for the implementation of visual modelling and analysis tools. The goal is to facilitate the specification, analysis and simulation of complex systems, using port graphs. A system is represented by an initial graph and a collection of graph rewriting rules, together with a user-defined strategy to control the application of rules. The strateg...

متن کامل

Non-intrusive Formal Methods and Strategic Rewriting for a Chemical Application

The concept of formal islands allows adding to existing programming languages, formal features that can be compiled later on into the host language itself, therefore inducing no dependency on the formal language. We illustrate this approach with the TOM system that provides matching, normalization and strategic rewriting, and we give a formal island implementation for the simulation of a chemic...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010